home *** CD-ROM | disk | FTP | other *** search
- <bindings
- xmlns="http://www.mozilla.org/xbl"
- xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
- xmlns:xbl="http://www.mozilla.org/xbl">
-
- <binding id="btsearchbar">
- <resources>
- <stylesheet src="btsearchtextbox.css"/>
- </resources>
- <content>
- <xul:textbox class="bt_searchbar_textbox"
- anonid="textbox"
- type="autocomplete">
- </xul:textbox>
- <xul:button class="bt_searchbar_button"
- anonid="button">
- </xul:button>
-
- </content>
-
- <handlers>
- <handler event="command"><![CDATA[
- switch (event.originalTarget.getAttribute("anonid")) {
- case "button":
- this.handleSearchCommand(event);
- break;
- }
- ]]>
- </handler>
- </handlers>
-
- <implementation>
- <method name="handleSearchCommand">
- <parameter name="event"/>
- <parameter name="text"/>
- <body><![CDATA[
- if (!text) {
- text = document.getAnonymousElementByAttribute(this, "anonid", "textbox").value;
- }
- var searchSvc = Components.classes["@mozilla.org/browser/search-service;1"]
- .getService(Components.interfaces.nsIBrowserSearchService);
- var yahooEngine = searchSvc.getEngineByName("Yahoo!");
- if (yahooEngine) {
- var submission = yahooEngine.getSubmission(text, null);
- openUILinkIn(submission.uri.spec + "L", "tab", null, submission.postData);
- }
- ]]></body>
- </method>
-
- </implementation>
- </binding>
-
- <binding id="bt-searchbar-textbox"
- extends="chrome://global/content/bindings/autocomplete.xml#autocomplete">
- <implementation>
- <method name="onTextEntered">
- <parameter name="event"/>
- <body><![CDATA[
- document.getBindingParent(this).handleSearchCommand(event, this.value);
- ]]></body>
- </method>
- </implementation>
- </binding>
- </bindings>
-